close;
clc;
clear
%% data
currents = [282/(1-0.1),282/(1-0.2),282/(1-0.3),282/(1-0.4)]; % 电流大小，x轴数据
% CurrentCircuit = [101.31, 124.54, 154.69, 169.81, 191.37]; % 第一组条形图数据
% CurrentMath = [101.41, 124.3, 155.23, 170.5763, 192.2811]; % 第二组条形图数据
% TempCircuit = [104.01, 115.26,132.65, 142.87, 158.99]; % 第一条折线图数据
% TempMath = [101.0, 113.85, 133.56, 144.6287, 162.7664]; % 第二条折线图数据

% CurrentCircuit = [66.77, 83.34, 100.30, 116.95, 133.77]; % 第一组条形图数据
% CurrentMath = [66.5419, 83.1889, 99.9441,116.6082 , 133.2916]; % 第二组条形图数据
% TempCircuit = [119.46, 139.34, 165.23, 192.5, 224.03]; % 第一条折线图数据
% TempMath = [117.1382,136.3955 ,160.1124 , 187.9911, 219.8414]; % 第二条折线图数据
mode = 'Single';
CurrentCircuit = [229.25,186.25,196.76,199.02]; % 第一组条形图数据
% CurrentMath = [66.5419, 83.1889, 99.9441,116.6082 , 133.2916]; % 第二组条形图数据
TempCircuit = [116.90,119.76,142.76,165.09]; % 第一条折线图数据
% TempMath = [117.1382,136.3955 ,160.1124 , 187.9911, 219.8414]; % 第二条折线图数据

% 绘制条形图并设置左y轴
yyaxis left; % 激活左y轴
if strcmp(mode,'Single')
bar1 = bar([CurrentCircuit]', 'grouped'); % 绘制两组条形图
set(bar1(1), 'FaceColor', [0.3 0.6 0.8]); % 设置第一组条形图颜色为柔和蓝色
ylabel('Current/(A)','FontSize',25); % 设置左y轴标签
legend('Average current per inductor','FontSize',15); % 设置图例
set(gca,'FontSize',25)

% 设置x轴刻度位置和标签
xticks(1:length(currents)); % 设置x轴刻度位置
xticklabels(currents); % 设置x轴刻度标签

% 绘制折线图并设置右y轴
yyaxis right; % 激活右y轴
plot(1:4, TempCircuit, 'm-o', 'LineWidth', 2,'DisplayName','Temperature of one pcs chip'); % 绘制第一条折线图，使用黑色
% hold on; % 保持当前图形，以便在同一图上绘制第二条折线图
% plot(1:5, TempMath, 'm-s', 'LineWidth', 2,'DisplayName','Temperature of Math Model'); % 绘制第二条折线图，使用品红色
ylabel('Temperature/(℃)'); % 设置右y轴标签
legend('show'); % 显示图例
legend('Location','NorthWest');

% 设置x轴和整个图形的标签
xlabel('Output Voltage','FontSize',25);
% title('Combined Bar and Line Chart with Dual Y-Axes','FontSize',25);

% 关闭hold状态
hold off
else
bar1 = bar([CurrentCircuit; CurrentMath]', 'grouped'); % 绘制两组条形图
set(bar1(1), 'FaceColor', [0.3 0.6 0.8]); % 设置第一组条形图颜色为柔和蓝色
set(bar1(2), 'FaceColor', [0.8 0.4 0.3]); % 设置第二组条形图颜色为柔和橙色
ylabel('Current/(A)','FontSize',25); % 设置左y轴标签
legend('Current of Circuit Model', 'Current of Math Model','FontSize',15); % 设置图例
set(gca,'FontSize',25)

% 设置x轴刻度位置和标签
xticks(1:length(currents)); % 设置x轴刻度位置
xticklabels(currents); % 设置x轴刻度标签

% 绘制折线图并设置右y轴
yyaxis right; % 激活右y轴
plot(1:5, TempCircuit, 'k-o', 'LineWidth', 2,'DisplayName','Temperature of Circuit Model'); % 绘制第一条折线图，使用黑色
hold on; % 保持当前图形，以便在同一图上绘制第二条折线图
plot(1:5, TempMath, 'm-s', 'LineWidth', 2,'DisplayName','Temperature of Math Model'); % 绘制第二条折线图，使用品红色
ylabel('Temperature/(℃)'); % 设置右y轴标签
legend('show'); % 显示图例
legend('Location','NorthWest');

% 设置x轴和整个图形的标签
xlabel('Input Current (A)','FontSize',25);
% title('Combined Bar and Line Chart with Dual Y-Axes','FontSize',25);

% 关闭hold状态
hold off
end


